-
Notifications
You must be signed in to change notification settings - Fork 3
Add example programs using condition variables from pldi23 #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: condvar
Are you sure you want to change the base?
Add example programs using condition variables from pldi23 #10
Conversation
1c275f5 to
0157866
Compare
32a936f to
6f7c604
Compare
priml-examples/cv-inversion-err.prm
Outdated
| (* FIXME: or should we add inline types to fn signature? *) | ||
| (* FIXME: how to specify arg type as a condition variable? *) | ||
| (* FIXME: is `int ref` the correct way to specify res is a refererence? *) | ||
| (* | ||
| fun[low] foo (cv: cv[high]) (res: int ref) = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is using inline types in the function signature the correct way to specify the priority of a condition variable argument to a function (e.g. (cv: cv[high]) as seen in line 39)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You'd need to add syntax for the CV type to the parser, so the syntax is up to you. cv[] seems like good syntax to me. I never got around to this for mutexes. Type annotations are generally unnecessary in ML (other than as documentation), so it's possible to get by without it.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
|
Code to parse all examples correctly now has been pushed. |
Adds examples, translated to PriML, from "Responsive Parallelism with Synchronization" paper.
TODO:
cv[priority]type to parsingfun[priority]syntax